const jwt = require('jsonwebtoken');
// 读取secret标记码
const secret = think.config('token.secret');
// 读取token有效期
const expiresIn = think.config('token.expiresIn');
module.exports = class extends think.Service {
  /**
     * 创建token
     * @param userinfo
     */
  createToken(userinfo) {
    console.log('获取到的secret：' + secret);
    console.log('获取到的expiresIn：' + expiresIn);
    const result = jwt.sign(userinfo, secret, {
      expiresIn: expiresIn // 1小时过期
    });
    return result;
  }

  verifyToken(token) {
    if (token) {
      try {
        const result = jwt.verify(token, secret);
        return result;
      } catch (e) {
        // 票据验证失败，需要提示重新登录
        return 'fail';
      }
    }
    return 'fail';
  }
};
